草庐IT

JavaFX - 许多静态 FXML Controller

全部标签

java - Lambda for JavaFX 任务

对于这段代码,编译器给我这个错误“TargetTypeoflambdaexpressionmustbeaninterface”:Task>task=()->sDAO.listFiltered();listFiltered()的返回类型是Iterable.如何使用Task与lambda的接口(interface)? 最佳答案 Task是一个抽象类,不是接口(interface),所以不能直接用lambda表达式创建。您通常只使用内部类来子类化Task:Task>task=newTask>(){@OverridepublicIterab

java - 在 JavaFX 中正确旋转 3 轴上的 3D 对象

到目前为止,我在JavaFX中使用的旋转对象的方法是将其分为3组,每组都附加了一个Rotate并锁定到一个轴,如下所示:Rotateheading,roll,pitch;Groupnormalrotate,rollrotate,verticalrotate;heading.setAxis(newPoint3D(0,1,0));normalrotate.getTransforms().add(heading);roll.setAxis(newPoint3D(0,0,1));rollrotate.getTransforms().add(roll);pitch.setAxis(newPoin

java - JavaFX 中的样式按下按钮

我的FXML文件中有一个Button,我通过下面的CSS给它一个样式.button{-fx-background-color:linear-gradient(#ff5400,#be1d00);-fx-background-radius:30;-fx-background-insets:0;-fx-text-fill:white;}正如你所看到的,这个按钮有一个新的很棒的样式,但是每当我点击它时,它仍然像以前一样,你无法理解它是否被点击了......在我搜索时,我在这个链接中找到了一个解决方案:PressedCSS,但如果您注意到它是Web浏览器和JavaFX使用的CSS不支持它。那么解

java - 接口(interface)中的默认方法,但只有静态最终字段

我知道接口(interface)中的所有字段都是隐式的staticandfinal.这在Java8之前是有意义的。但是随着默认方法的引入,接口(interface)也具备了抽象类的所有能力。因此,非静态和非最终字段也是必需的。但是当我尝试正常声明一个字段时,它默认变成静态和最终的。有没有办法在Java8的接口(interface)中声明非静态和非最终字段。还是我完全误解了这里的内容??? 最佳答案 Java接口(interface)中的所有字段都是publicstaticfinal。即使在添加了默认方法之后,在接口(interfac

java - 有没有办法多次执行静态 block ?如果是这样,那又如何呢?

我的理解静态block在类加载期间执行,如果类已经加载则除了类重新加载之外没有办法加载该类疑问/问题1)JVM是否有重新加载类的时间?我的理解在类加载中,JVM加载Java文件的字节码,因此它无法将所有数千个类的字节码保存在内存中,因此它可能会丢弃很少使用的代码并在必要时重新加载它,并且在重新加载期间JVM不会初始化静态变量和再次阻塞(可能使用了一些跟踪机制)疑问/问题2)如果我上面的理解不正确,请指正 最佳答案 据我所知,JVM本身永远不会重新加载一个类;一旦加载了一个类,它就会永远保持加载状态。出于这个原因,类定义保存在“Per

java - 使用静态嵌套类作为 Spring bean

如何在XML配置文件中创建静态嵌套类的实例作为Springbean?例如:packagecom.x.y;publicclassA{publicstaticclassB{...}}所以我有一个B类的Spring管理的bean? 最佳答案 使用A$B语法,这是类加载器查看内部类的方式。所以假设包com.x.y,那么: 关于java-使用静态嵌套类作为Springbean,我们在StackOverflow上找到一个类似的问题: https://stackoverfl

java - 静态对象数组

publicclassArray{staticString[]a=newString[]{"red","green","blue"};staticPoint[]p=newPoint[]{newPoint(1,2),"3,4"};publicstaticvoidmain(String[]args){System.out.println("hello");}classPoint{intx;inty;Point(intx,inty){this.x=x;this.y=y;}Point(Strings){String[]a=s.split(",");x=a[0].parseInt();y=a[1

java - 使用子类名访问父类静态字段不会加载子类?

classA{staticintsuper_var=1;static{System.out.println("super");}}classBextendsA{staticintsub_var=2;static{System.out.println("sub");}}publicclassDemo{publicstaticvoidmain(String[]args){System.out.println(B.super_var);}}输出是:super1这意味着子类不会加载或任何其他事情?它是如何工作的? 最佳答案 当您在子类引用上

java - 为什么拥有静态成员会使语言不那么面向对象?

我目前正在学习Scala,我在Odersky的ProgrammingScala2ndedition中看到了这个语句:onewayinwhichScalaismoreobject-orientatedthanJavaisthatclassesinScalacannothavestaticmembers.我在Java或Scala方面的经验不足,无法理解这种比较。为什么拥有静态成员会使语言不那么面向对象? 最佳答案 奥德斯基的说法是有道理的,意义重大,但有些人不明白他的意思。假设在Java中你有一个类Foo和方法f:classFoo{in

文本区域中的 JavaFX 多种颜色(JavaFX 8)

我在JavaFX中找不到那么多文档。我很高兴知道如何做到这一点:当我在文本区域中键入一个词时,fx“google”或“facebook”。我可以这样做吗,比如它可以将google的颜色更改为fx绿色,并更改字体和类似的东西。我很高兴知道如何做到这一点:)。 最佳答案 没有。JavaFX8不支持TextArea中文本的多种颜色。您可以试试TomasMikula的RichTextFX控制并查看是否适合您。RichTextFXprovidesatextareaforJavaFXwithAPItostylerangesoftext.Itis